import { authRequest } from '@/api/request';

/**
 * 用户登录
 * @param {Object} data - 登录信息
 * @param {string} data.username - 用户名
 * @param {string} data.password - 密码
 * @returns {Promise} - 返回登录结果
 */
export function login(data) {
  return authRequest({
    url: '/signin',
    method: 'post',
    data
  });
}

/**
 * 用户注册
 * @param {Object} data - 注册信息
 * @param {string} data.username - 用户名
 * @param {string} data.password - 密码
 * @param {string} data.email - 邮箱
 * @param {string} data.name - 姓名
 * @param {string} data.phone - 手机号
 * @returns {Promise} - 返回注册结果
 */
export function register(data) {
  return authRequest({
    url: '/signup',
    method: 'post',
    data
  });
}

/**
 * 获取用户信息
 * @param {boolean} forceRefresh 是否强制刷新，不使用缓存
 * @returns {Promise} 返回用户信息
 */
export function getUserInfo(forceRefresh = false) {
  return authRequest({
    url: '/user-info',
    method: 'get',
    params: forceRefresh ? { t: new Date().getTime() } : {}
  });
}

/**
 * 用户登出
 * @returns {Promise} - 返回登出结果
 */
export function logout() {
  return authRequest({
    url: '/logout',
    method: 'post'
  });
}

/**
 * 刷新令牌
 * @returns {Promise} - 返回新的令牌
 */
export function refreshToken() {
  return authRequest({
    url: '/refresh-token',
    method: 'post'
  });
} 